package com.gpframework.module.process.domain.req;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.ToString;
import lombok.experimental.Accessors;
import javax.validation.constraints.*;

import java.util.Date;
import java.math.BigDecimal;

/**
 * @ClassName GpProcessSchedulingAdd
 * @Author gpframework
 * @Date 2023-12-20
 * @Version 1.0.0
 * @Description 排单Add对象
 */
@Data
@ToString
@EqualsAndHashCode
@NoArgsConstructor
@Accessors(chain = true)
public class GpProcessSchedulingAdd {
    private static final long serialVersionUID = 1L;

    /** 品牌id */
    @ApiModelProperty("品牌id")
    private String brandId;

    /** 品牌名称 */
    @ApiModelProperty("品牌名称")
    private String brandName;

    /** 缺货报库存申请表id */
    @ApiModelProperty("缺货报库存申请表id")
    private Long productionApplicationId;

    /** 排单日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty("排单日期")
    private Date schedulingDate;

    /** 订单号 */
    @ApiModelProperty("订单号")
    private String sn;

    /** 底布ID */
    @ApiModelProperty("底布ID")
    private Long backerId;

    /** 底布品名 */
    @ApiModelProperty("底布品名")
    private String backerName;

    /** 底布颜色 */
    @ApiModelProperty("底布颜色")
    private String backerColor;

    /** 加工商ID */
    @ApiModelProperty("加工商ID")
    private Long processorId;

    /** 花型 */
    @ApiModelProperty("花型")
    private String flowerPattern;

    /** 数量 */
    @ApiModelProperty("数量")
    private Long num;

    /** 条数 */
    @ApiModelProperty("条数")
    private Long numberItems;

    /** 要求 */
    @ApiModelProperty("要求")
    private String need;
    /** 已做货数量 */
    @ApiModelProperty("已做货数量")
    private Long doneQuantity;
    /** 未做货数量 */
    @ApiModelProperty("未做货数量")
    private Long undoneQuantity;
    /** 打码规格 */
    @ApiModelProperty("打码规格")
    private String codingSpecifications;

    /** 底布去向 */
    @ApiModelProperty("底布去向")
    private String backerDestination;

    @ApiModelProperty("订单是否完成 0否 1是")
    private String orderFlag;

    /** 加工商 */
    @ApiModelProperty("加工商")
    private String processor;

    /** 备注 */
    @ApiModelProperty("备注")
    private String remarks;

    /** 需求表id */
    @ApiModelProperty("需求表id")
    private Long needId;

    /** 成品品名 */
    @ApiModelProperty("成品品名")
    private String productName;

    /** 成品颜色 */
    @ApiModelProperty("成品颜色")
    private String productColor;

    /** 加急程度 */
    @ApiModelProperty("加急程度")
    private String urgencyLevel;

    /** 图片 */
    @ApiModelProperty("图片")
    private String picture;

    /** 是否生成到货单 0否 1是 */
    @ApiModelProperty("是否生成到货单 0否 1是")
    private String deliveryNoteFlag;

    /** 申请人id */
    @ApiModelProperty("申请人id")
    private Long applicantId;

    /** 申请人 */
    @ApiModelProperty("申请人")
    private String applicantMan;

    /** 申请时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("申请时间")
    private Date applicantTime;

    /** 跟单员id */
    @ApiModelProperty("跟单员id")
    private Long documentaryId;

    /** 跟单员 */
    @ApiModelProperty("跟单员")
    private String documentaryMan;

    /** 操作时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("操作时间")
    private Date operateTime;

    /** 排序 */
    @ApiModelProperty("排序")
    private Integer sort;

    /** 操作人名称 */
    private String operatorName;
    /** 操作人编号 */
    private String operatorNum;
    /**审批人名称 */
    private String examinName;

}
